- 10月
- 2024年11月
こんにちは。キャプテンです。
CSVファイルを開いた際に文字化けをしている場面に遭遇した方は、少なくはないと思います。多くの場合、ファイルの文字コードに由来することが原因だったりします。その場合は、ファイルをShift_JISに変更することで文字化けは改善します。
今回、Macにもともと入っているアプリケーション「Automator」で作成するクイックアクションを使って、ファイルの文字コードを1クリックでShift_JISへ変換する方法を紹介します。私の業務の都合上、UTF_8へも変換するようにしたいので、Shift_JISとUTF_8、2つに変換するクイックアクションを作成する流れを紹介します。
大きく分けて3つのステップがあります。それぞれのステップの簡単な説明をします。
- Homebrewをインストール
macOS上で動作するパッケージ管理ツールのことです。後述するnkfをインストールするためのツールと思ってください。 - nkfをインストール
日本語の文字コードを変換するためのツールです。これでファイルの文字コードを変換します。 - AutomatorでShift_JISへ変換するクイックアクションを作成
上記のnkfを動作させるコードをクイックアクションとして登録します。AutomatorはMacにもともとインストールされています。
CSVの文字化けをAutomatorを使ってワンクリックで修正する方法
1. Homebrewをインストール
ターミナルを開きます。「アプリケーション」フォルダ内の「ユーティリティ」フォルダに入っています。開いたら画面上に以下のコードを入力(コピーアンドペースト)し、エンターキー(Returnキー)を押します。
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
途中、Macの起動時などに聞かれるパスワードを入力します。入力した文字は表示されませんが、正しく入力しエンターキーを押下してください。
一通りダウンロードとインストールが終わった後に、PATHを通す必要があります。この画面に従って2つのコードを入力します。赤色で囲った部分の2つのコードになりますが、環境によって一部変わりますので、ターミナル上からコピーアンドペーストするのが楽です。
※赤字の部分はご自身の環境によって異なりますので、読み替えるか、ターミナルに表示されたコードをコピーアンドペーストして入力してください。
1つ目のコードを入力してエンターキーを押下。
echo ‘eval “$(/opt/homebrew/bin/brew shellenv)”‘ >> /Users/captain/.zprofile
2つ目のコードを入力してエンターキーを押下。
eval “$(/opt/homebrew/bin/brew shellenv)”
これでHomebrewのインストールは完了です。
2. nkfをインストール
引き続き、MacのターミナルAppを使います。以下のコードを入力してエンターキーを押します。
brew install nkf
3. AutomatorでShift_JISへ変換するクイックアクションを作成
Automatorアプリを開きます。上部メニューより、「ファイル」>「新規」を選びます。
書類の種類を選択する画面では「クイックアクション」を選択します。
画面左側のライブラリより「ユーティリティ」>「シェルスクリプを実行」を選びます。
「ワークフローが受け取る現在の項目」は「ファイルまたはフォルダ」を選びます。
「シェルスクリプトを実行部分」では「シェル」は「/bin/bash」を選び、「入力の引き渡し方法」は「引数として」を選びます。
既に入力されているスクリプトを削除し、以下のコードを入力(コピーアンドペースト)します。
for f in “$@”
do
/opt/homebrew/bin/nkf -s –overwrite “$f”
done
一連の入力を終えた画面は以下の通りです。
上部メニューより保存…を押し、保存します。保存する際の名前はわかりやすい名前を付けると良いでしょう。私は「CSVをSJISへ変換」としました。
使い方
文字化けしたCSVファイルを用意しました。
変換したいCSVファイルを右クリックして、ファイルメニューを開きます。クイックアクションを選び、先ほど作成した「CSVをSJISへ変換」を選びます。
再度開いてみると変換されています。
以上で完了です。私は業務上「CSVをUTF_8へ変換」する必要もあったため、もう1つクイックアクションを作成しました。クイックアクションを作成する際に入力するコードを以下のように変えます。
for f in “$@”
do
/opt/homebrew/bin/nkf -w –overwrite “$f”
done
赤字の部分が「-s」から「-w」へ変わっております。こちらを「CSVをUTF_8へ変換」するクイックアクションとして登録しました。
まとめ
いかがでしたでしょうか? 会社から貸与されているMacが変わり、新たに環境構築をしましたので、今後の備忘録としてまとめてみました。
あわせて読みたい
このブログを書いたスタッフ
セールス
きゃぷてん
小売業界で営業、事務、EC事業を経験し、2022年3月からトリニティに入社。少し変わったことが好きな少数派。休みの日は家で過ごすことが多いインドアな性格のため、トリニティの健康経営を口実に運動をしたいと思っている。寝不足にならないように早めに寝ることを心掛けています。
コメントを投稿
ログイン
登録
他のサービスIDでログイン
Log in with Facebook Log in with Twitter Log in with Googleログインせずに投稿する場合には名前とメールアドレスを入力してください。
管理者の承認後、コメントが表示されます。